Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

операції над стрічками

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
О
Факультет:
КН
Кафедра:
Кафедра інформаційних систем та мереж

Інформація про роботу

Рік:
2013
Тип роботи:
Лабораторна робота
Предмет:
Теорiя алгоритмiв i математичнi основи представленння знань

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, МОЛОДІ ТА СПОРТУ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ ,,ЛЬВІВСЬКА ПОЛІТЕХНІКА’’ Кафедра інформаційних систем та мереж / Лабораторна робота №2 на тему: операції над стрічками Мета роботи: набуття практичних навичок застосування операцій над стрічками. Завдання Розробити процедури та функції які забезпечують виконання операції вказаних в завданні. В контрольному прикладі передбачити всі можливі комбінації вхідних параметрів (нульова довжина, вихід за межі стрічки і т.п.), в тому числі і неправильні. № варіанту індивідуального завдання 10. Визначення довжини слова з номером n. Опис алгоритму: В даній лабораторній я створюю алгоритм знаходження довжини вказаного слова. Його робота полягає в накопиченні всіх пробілів у стрічці, і коли ми вводимо n, тобто номер слова, довжину якого нам потрібно, то функція перевіряє чи (k=n-1), тобто, в реченні на один пробіл менше ніж слів, і з цього місця інша змінна починає накопичувати символи, тобто букви слова і коли доходить до кінця, то виводить нам довжину сова на екран. Також передбачено ввід порожньої стрічки, виводить помилку, якщо нічого не введено з клавіатури. Якщо ми вказуємо на слово, якого немає, то також з’являється помилка (k<n-1), тобто, коли кількість пробілів менша ніж номер слова. Блок-схема алгоритму Ні Так Ні Так Ні Так Ні Так Реалізація програми в мові С Код програми //WordLenght.cpp #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <string> #include <iostream> #include <ctime> #define MAX 256 #define OUTPUT ( n==1 ? b : b-1) void main() { char s[MAX]; int i,n,k,b,z; int t1, t2; printf("Введiть стрiчку:\n"); gets_s(s); if (strlen(s)==0) printf("Порожня стрiчка"); else { printf("Введiть номер слова:\n"); scanf_s("%d", &n); t1=clock(); k=0; b=0; z=0; for(i=0; i<strlen(s); i++) { if ((s[i]=='!')||(s[i]=='-')||(s[i]=='+')||(s[i]=='*')||(s[i]==']') ||(s[i]=='|')||(s[i]=='/')||(s[i]=='#')||(s[i]=='@')||(s[i]=='%') ||(s[i]=='{')||(s[i]=='}')||(s[i]=='"')||(s[i]=='(')||(s[i]==':') ||(s[i]==';')||(s[i]=='=')||(s[i]=='?')||(s[i]=='[')||(s[i]==')') ||(s[i]=='^')||(s[i]=='№')||(s[i]=='`')||(s[i]=='.')||(s[i]=='<') ||(s[i]=='>')||(s[i]=='&')) z++; { if (s[i]==' ') s[i+1]; } if ((s[i]==' ')&&(s[i+1]!=' ')) k++; if (k==n-1) b++; } if (z>0) printf("Помилка, в стрiчцi мiстяться %d системних символи\n",z); else { if (k<n-1) printf("Вказаного слова не iснує"); else printf("Довжина вказаного слова: %d", OUTPUT); } t2=clock(); printf("\nЧас виконання програми:%ld ms\n", t2-t1); } _getch(); } Виведення результатів На даному рисунку я перевіряю,як працює визначення довжини третього слова . / Ввожу системні символи, програма видає помилки, бо символи не стосуються слова. / Перевіряю, код на визначення порожньої стрічки. / Ввожу речення, і вказую на неіснуюче слово. / Перевіряю код на врахування апострофа в українській мові. / Перевіряю код на врахування скорочувального символа в англійській мові мові. / Перевіряю код на врахування твердого знаку в російській мові. / Вказую на слово ,якого немає, тобто, на слово поза межами стрічки. / Таблиця затрат часу на виконання Час Для стрічки із 3 слів Для стрічки із 10 слів Середня різниця  t1 2 мс. 7 мс. ...
Антиботан аватар за замовчуванням

12.12.2016 23:12

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини